﻿<style>
    table {
        border-collapse: collapse;
        border: 1px solid;
        border-color: rgb(211, 202, 221);
    }

    table thead,
    table tr {
        border-top-width: 1px;
        border-top-style: solid;
        border-top-color: rgb(211, 202, 221);
    }

    table {
        border-bottom-width: 1px;
        border-bottom-style: solid;
        border-bottom-color: rgb(211, 202, 221);
    }

    table td,
    table th {
        padding: 5px 10px;
        font-size: 14px;
        font-family: Verdana;
        color: rgb(95, 74, 121);
    }

    table tr:nth-child(even) {
        background: rgb(223, 216, 232)
    }

    table tr:nth-child(odd) {
        background: #FFF
    }
</style>
<h3>应用配置（AppConfig）</h3>
<table>
    <thead>
        <tr>
            <th>名称</th>
            <th>显示名</th>
            <th>类型</th>
            <th>长度</th>
            <th>精度</th>
            <th>主键</th>
            <th>允许空</th>
            <th>备注</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>Id</td>
            <td>编号</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td title="自增">AI</td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>ProjectId</td>
            <td>项目</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>资源归属的团队</td>
        </tr>

        <tr>
            <td>Category</td>
            <td>类别</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>AppId</td>
            <td>应用</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>Name</td>
            <td>名称</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td title="唯一索引">UQ</td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>DisplayName</td>
            <td>显示名</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Enable</td>
            <td>启用</td>
            <td>Boolean</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>Version</td>
            <td>版本</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>应用正在使用的版本号，返回小于等于该版本的配置</td>
        </tr>

        <tr>
            <td>NextVersion</td>
            <td>下一版本</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>下一个将要发布的版本，发布后两者相同</td>
        </tr>

        <tr>
            <td>PublishTime</td>
            <td>定时发布</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td>在指定时间自动发布新版本</td>
        </tr>

        <tr>
            <td>CanBeQuoted</td>
            <td>可被依赖</td>
            <td>Boolean</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>打开后，才能被其它应用依赖</td>
        </tr>

        <tr>
            <td>Quotes</td>
            <td>依赖应用</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>所依赖应用的集合</td>
        </tr>

        <tr>
            <td>IsGlobal</td>
            <td>全局</td>
            <td>Boolean</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>该应用下的配置数据作为全局数据，请求任意应用配置都返回</td>
        </tr>

        <tr>
            <td>Readonly</td>
            <td>只读</td>
            <td>Boolean</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>只读应用，不支持客户端上传配置数据，可用于保护数据避免被错误修改</td>
        </tr>

        <tr>
            <td>EnableWorkerId</td>
            <td>雪花标识</td>
            <td>Boolean</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>给应用端分配唯一工作站标识，用于生成雪花Id，随着使用递增</td>
        </tr>

        <tr>
            <td>EnableApollo</td>
            <td>阿波罗</td>
            <td>Boolean</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>ApolloMetaServer</td>
            <td>阿波罗地址</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>ApolloAppId</td>
            <td>阿波罗账号</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>ApolloNameSpace</td>
            <td>阿波罗命名空间</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>默认application，也可以填依赖的公共命名空间，但建议为公共命名空间建立应用依赖。</td>
        </tr>

        <tr>
            <td>UsedKeys</td>
            <td>已使用</td>
            <td>String</td>
            <td>2000</td>
            <td></td>
            <td></td>
            <td></td>
            <td>用过的配置项</td>
        </tr>

        <tr>
            <td>MissedKeys</td>
            <td>缺失键</td>
            <td>String</td>
            <td>2000</td>
            <td></td>
            <td></td>
            <td></td>
            <td>没有读取到的配置项</td>
        </tr>

        <tr>
            <td>CreateUserID</td>
            <td>创建者</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>CreateTime</td>
            <td>创建时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>CreateIP</td>
            <td>创建地址</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateUserID</td>
            <td>更新者</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateTime</td>
            <td>更新时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateIP</td>
            <td>更新地址</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Remark</td>
            <td>备注</td>
            <td>String</td>
            <td>500</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>
    </tbody>
</table>
<br></br>
<h3>应用规则（AppRule）</h3>
<table>
    <thead>
        <tr>
            <th>名称</th>
            <th>显示名</th>
            <th>类型</th>
            <th>长度</th>
            <th>精度</th>
            <th>主键</th>
            <th>允许空</th>
            <th>备注</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>Id</td>
            <td>编号</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td title="自增">AI</td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>Rule</td>
            <td>规则</td>
            <td>String</td>
            <td>500</td>
            <td></td>
            <td></td>
            <td></td>
            <td>分号分段，逗号间隔多项匹配值，比如IP=10.*,172.*;LocalIP=192.*</td>
        </tr>

        <tr>
            <td>Result</td>
            <td>结果</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>比如Scope=dev</td>
        </tr>

        <tr>
            <td>Priority</td>
            <td>优先级</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>数字越大优先级越高</td>
        </tr>

        <tr>
            <td>Enable</td>
            <td>启用</td>
            <td>Boolean</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>CreateUserID</td>
            <td>创建者</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>CreateTime</td>
            <td>创建时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>CreateIP</td>
            <td>创建地址</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateUserID</td>
            <td>更新者</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateTime</td>
            <td>更新时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateIP</td>
            <td>更新地址</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Remark</td>
            <td>备注</td>
            <td>String</td>
            <td>500</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>
    </tbody>
</table>
<br></br>
<h3>应用依赖（AppQuote）</h3>
<table>
    <thead>
        <tr>
            <th>名称</th>
            <th>显示名</th>
            <th>类型</th>
            <th>长度</th>
            <th>精度</th>
            <th>主键</th>
            <th>允许空</th>
            <th>备注</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>Id</td>
            <td>编号</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td title="自增">AI</td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>AppId</td>
            <td>应用</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>原始应用，该应用依赖别人</td>
        </tr>

        <tr>
            <td>TargetAppId</td>
            <td>目标应用</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>被原始应用依赖的应用</td>
        </tr>

        <tr>
            <td>CreateUserID</td>
            <td>创建者</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>CreateTime</td>
            <td>创建时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>CreateIP</td>
            <td>创建地址</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>
    </tbody>
</table>
<br></br>
<h3>配置数据（ConfigData）</h3>
<table>
    <thead>
        <tr>
            <th>名称</th>
            <th>显示名</th>
            <th>类型</th>
            <th>长度</th>
            <th>精度</th>
            <th>主键</th>
            <th>允许空</th>
            <th>备注</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>Id</td>
            <td>编号</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td title="自增">AI</td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>AppId</td>
            <td>应用</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>Key</td>
            <td>名称</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>下划线开头表示仅用于内嵌，不能返回给客户端；多级名称用冒号分隔</td>
        </tr>

        <tr>
            <td>Scope</td>
            <td>作用域</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Value</td>
            <td>数值</td>
            <td>String</td>
            <td>2000</td>
            <td></td>
            <td></td>
            <td></td>
            <td>正在使用的值，支持内嵌 ${key@app:scope}</td>
        </tr>

        <tr>
            <td>Version</td>
            <td>版本</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>当前版本号，每次修改都是应用版本加一</td>
        </tr>

        <tr>
            <td>Enable</td>
            <td>启用</td>
            <td>Boolean</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>NewValue</td>
            <td>期望值</td>
            <td>String</td>
            <td>2000</td>
            <td></td>
            <td></td>
            <td></td>
            <td>已被修改，尚未发布的值，支持内嵌 ${key@app:scope}</td>
        </tr>

        <tr>
            <td>NewVersion</td>
            <td>新版本</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td>下一个将要发布的版本，发布后两者相同</td>
        </tr>

        <tr>
            <td>NewStatus</td>
            <td>新状态</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>启用/禁用/删除</td>
        </tr>

        <tr>
            <td>CreateUserID</td>
            <td>创建者</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>CreateTime</td>
            <td>创建时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>CreateIP</td>
            <td>创建地址</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateUserID</td>
            <td>更新者</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateTime</td>
            <td>更新时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>UpdateIP</td>
            <td>更新地址</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>Remark</td>
            <td>备注</td>
            <td>String</td>
            <td>500</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>
    </tbody>
</table>
<br></br>
<h3>配置历史（ConfigHistory）</h3>
<table>
    <thead>
        <tr>
            <th>名称</th>
            <th>显示名</th>
            <th>类型</th>
            <th>长度</th>
            <th>精度</th>
            <th>主键</th>
            <th>允许空</th>
            <th>备注</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>Id</td>
            <td>编号</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td title="自增">AI</td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>AppId</td>
            <td>应用</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>Action</td>
            <td>操作</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>Success</td>
            <td>成功</td>
            <td>Boolean</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>Remark</td>
            <td>内容</td>
            <td>String</td>
            <td>2000</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>TraceId</td>
            <td>追踪</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td>最新一次查看采样，可用于关联多个片段，建立依赖关系，随线程上下文、Http、Rpc传递</td>
        </tr>

        <tr>
            <td>CreateUserID</td>
            <td>创建者</td>
            <td>Int32</td>
            <td></td>
            <td></td>
            <td></td>
            <td>N</td>
            <td></td>
        </tr>

        <tr>
            <td>CreateTime</td>
            <td>创建时间</td>
            <td>DateTime</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>

        <tr>
            <td>CreateIP</td>
            <td>创建地址</td>
            <td>String</td>
            <td>50</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>
    </tbody>
</table>
<br></br>
